Cargar bibliotecas

library(sf)
library(dplyr)
library(leaflet)
library(plotly)
library(DT)

Cargar documentos

# Carga de primates 
prim <-
  st_read(
    "https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/gbif/primates-cr-registros.csv",
    options = c(
      "X_POSSIBLE_NAMES=decimalLongitude",
      "Y_POSSIBLE_NAMES=decimalLatitude"
    ),
    quiet = TRUE
  )
st_crs(prim) = 4326
# Carga de cantones
cantones <-
  st_read(
    "https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/ign/delimitacion-territorial-administrativa/cr_cantones_simp_wgs84.geojson",
    quiet = TRUE
)

Comando para cruzar datos

prim<- 
 prim %>%
 st_join(cantones["canton"])

Parte 1

Tabla de primates avistados en Costa Rica

prim %>%
  st_drop_geometry() %>%
  select(family,
         species,
         stateProvince,
         canton,
         eventDate
         ) %>%
  DT::datatable(
    colnames = c("Familia", "Especie", "Provincia", "Cantón", "Fecha"),
    rownames = FALSE,
    options = list(
      searchHighlight = TRUE,
      language = list(url = '//cdn.datatables.net/plug-ins/1.10.11/i18n/Spanish.json')
    )
  )

Parte 2

Gráfico de pastel

Primtot <- data.frame("species"=rownames(prim), prim)
dataprim <- prim[,c('species', 'year')]

figprim <- plot_ly(dataprim, labels = ~species, values = ~year, type = 'pie')
figprim <- figprim %>% layout(title = 'Avistamiento de primates por especie (1839-2021)',
         xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
         yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))

figprim